Virtual sim card for mobile handsets

ABSTRACT

A system and method store provisioning data supporting a plurality of service providers in a VSIM internal memory unit of a mobile device. A user may selectively enable provisioning data supporting one of the plurality of service providers stored in the VSIM internal memory unit to conduct a wireless communication. An embodiment permits backing up, retrieving and restoring personal data in the VSIM internal memory unit using a remote database. Another embodiment allows a mobile device to select an optimal service provider to conduct a wireless communication. The optimal service provider may be determined based upon mobile device location, communication usage request and/or time and date.

FIELD OF INVENTION

The present invention relates generally to cellular telephone technologies, and more particularly to a system and method for remotely downloading cellular telephone provisioning information and personal data to a mobile device.

BACKGROUND OF INVENTION

Presently, mobile devices utilize a variety of technologies and formats which may include, for example, GSM (Global System for Mobile Communication), CDMA (Code Division Multiple Access) and/or UMTS (Universal Mobile Telecommunications System) technologies depending on the service provider of choice. In order to store the necessary provisioning data which allows the mobile device to communicate with a wireless communications network, GSM and UMTS mobile devices utilize a Subscriber Identity Module (SIM), commonly known as a SIM card. The SIM card is a detachable smart card containing the mobile device provisioning data, as well as a wealth of personal data, such as phonebooks, saved SMS messages, downloaded data, and personalization settings. Because the SIM card is detachable, multiple SIM cards with alternative provisioning information may be interchangeably inserted into the mobile device. In this manner, GSM and UMTS mobile devices may be used internationally simply by inserting a SIM card with the appropriate local provisioning information. In addition, the interchangeable aspect of SIM cards allows a user to purchase limited term pre-paid SIM cards. Limited term pre-paid SIM cards provide a user with access to a communication network so long as the pre-paid SIM card account remains valid. This option allows a user to essentially maintain service contracts with a wide variety of service providers as opposed to the conventional manner of maintaining a service contract with a single service provider. This allows a user to access a multitude of communication networks.

The limited term pre-paid SIM card option is particularly useful, for example, to international travelers who desire access to local wireless communication networks for the duration of their travels, but do not require additional access to local wireless communication networks after their return home. However, since the user's personal SIM card is replaced with the pre-paid SIM card during travel, the user cannot access personal data stored on their personal SIM card. This may cause frustration to the user as personal data such as contact data stored in the phone book on the personal SIM is no longer accessible while the pre-paid SIM card is in use. In addition, if the user travels out of the region for which the pre-paid SIM card provides wireless communication network access, the user must purchase a different pre-paid SIM card with the appropriate provisioning data for the new region. As a result, a user may have to carry a number of different pre-paid SIM cards and keep track of which pre-paid SIM card contains the appropriate provisioning data for each region.

While analogous devices for other mobile network systems have been developed, such as the Removable User Identity Module (RUIM), Universal Subscriber Identity Module (USIM) or Universal Integrated Circuit Card (UICC) (referred to herein as “smart cards”), these devices suffer from the same problems of personal data loss when the RUIM, USIM or UICC is removed in favor of a pre-paid locally provisioned smart card.

While some CDMA mobile devices store provisioning information on a removable card that can be moved from mobile device to mobile device, many CDMA phones do not provide this capability. Thus, many CDMA device users are not afforded the option of utilizing their personal mobile device when traveling abroad. Typically, these users must rent a mobile device or purchase a disposable device which has been provisioned for local use or that may accept a pre-paid SIM card.

Still other non-international traveling users may find the ability to quickly access the wireless communication networks of multiple service providers appealing. A typical mobile device user subscribes to a single service provider for wireless communication service for a relatively long term contract. A user may select a service provider based on a number of considerations including, but not limited to cost, network coverage and services available. While service providers may excel in certain aspects they may fail in other aspects. A user may need to make tradeoffs when selecting a single service provider. By utilizing pre-paid SIM cards, a user is no longer constrained to a single service provider. A user may select a service provider to use based upon which service provider will provide the optimal service for the user's specific need. Then the user may simply replace the current pre-paid SIM card with the pre-paid SIM card of the desired service provider on a per usage basis. For example, suppose service provider A provides excellent network coverage for voice communication on the east coast but not on the west coast, and provides slow data services. While on the east coast and conducting voice calls a user may elect to insert the pre-paid SIM card for service provider A. However, if the user travels to the west coast or wishes to conduct a data call, the user may elect to replace service provider A's pre-paid SIM card with another service provider's pre-paid SIM card. In this manner, a user may optimize wireless communication services, but must keep track of and carry multiple physical SIM cards.

Consequently, a system and method is desired to allow users to more easily modify the provisioning data according to location, usage, and/or time.

SUMMARY

In various embodiments a system and method is provided for modifying the provisioning data contained within the memory of mobile devices. Provisioning data is stored within a virtual SIM (VSIM) card which may be contained as part of the mobile device's internal memory. The provisioning data for multiple service providers may be stored within a VSIM and may be selectively enabled and disabled depending upon location, usage request and/or time. An embodiment provides mobile device users with the capability to download pre-paid provisioning data which allows access to a local communications network for a discrete period of time. Multiple pre-paid provisioning data accounts may be downloaded to the VSIM for selective use. Other embodiments provide mobile device users with the capability to further download personal data from a server after authentication and verification steps are completed so that personal data may be used on a rented or disposable mobile device.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated herein and constitute part of this specification, illustrate embodiments of the invention, and, together with the general description given above and the detailed description given below, serve to explain features of the invention.

FIG. 1 is a system diagram illustrating an embodiment system which provides for virtual SIM (VSIM) service contracts.

FIG. 2 is a system block diagram of a mobile device suitable for use in an embodiment.

FIG. 3 is a process flow diagram illustrating method steps of an embodiment method for obtaining a VSIM service contract.

FIG. 4 is a system and acquisition table of an exemplary preferred roaming list (PRL).

FIG. 5 is a system diagram of a cellular communication network implementing a VSIM service contract to connect a call.

FIG. 6 is a process flow diagram illustrating steps of an embodiment method by which a mobile device completes a communication call using a VSIM service contract.

FIG. 7 is a hardware/software architecture diagram of the mobile device and VSIM illustrating the flow of data in a provisioning data request and response.

FIG. 8 is a system diagram illustrating an alternative embodiment communication system in which a mobile device may obtain a VSIM service contract.

FIG. 9 is a process flow diagram illustrating steps of an alternative embodiment method for obtaining a VSIM service contact.

FIG. 10 is a system diagram illustrating an alternative embodiment communication system in which a mobile device may obtain a VSIM service contract as well as personal data stored in a remote VSIM server/database.

FIG. 11 is a process flow diagram illustrating steps of an alternative embodiment method for obtaining a VSIM service contract as well as personal data stored in a remote VSIM server/database.

FIG. 12 is a process flow diagram illustrating steps of an embodiment to automatically select an optimal VSIM service contract to complete a call.

FIG. 13 is a process flow diagram illustrating steps of an alternative embodiment to automatically select an optimal VSIM service contract to complete a call when a first selected VSIM service contract is incompatible with the mobile device.

FIG. 14 is a process flow diagram illustrating steps of an alternative embodiment to automatically select an optimal VSIM service contract to complete a call when a first selected VSIM service contract is unavailable to the mobile device.

DETAILED DESCRIPTION

The various embodiments will be described in detail with reference to the accompanying drawings. Wherever possible, the same reference numbers will be used throughout the drawings to refer to the same or like parts. References made to particular examples and implementations are for illustrative purposes, and are not intended to limit the scope of the invention or the claims.

As used herein, the term mobile device may refer to any one or all of cellular telephones, personal data assistants (PDA's), palm-top computers, laptop computers, wireless electronic mail receivers (e.g., the Blackberry® and Treo® devices), multimedia Internet enabled cellular telephones (e.g., the iPhone®), and similar personal electronic devices which include a programmable processor and memory. In a preferred embodiment, the mobile device is a cellular handset that can communicate via a cellular telephone network (e.g., a cellphone).

As used herein, the term “server” refers to any of a variety of commercially available computer systems configured to operate in a client-server architecture. In particular, the term “server” refers to network servers, particularly Internet accessible servers, which typically include a processor, memory (e.g., hard disk memory), and network interface circuitry configured to connect the server processor to the network, such as the Internet or a cellular telephone network.

Recently, alternative service provider contracts have become available to users of mobile devices. Rather than requiring users to commit to long term service contracts where users maintain a monthly account with a single service provider, short term pre-paid service contracts are available to users from a variety of service providers which allow users to access the service provider's communications network for a limited duration. Typically, a user using a short term pre-paid service contract (PPSC) will be able to access the communication network for a limited number of minutes, a limited number of bytes of data transferred, or a combination thereof Once the user has accessed the communication network for the limited number of minutes, transferred the limited number of bytes of data, or both, the short term pre-paid service contract will expire. For sake of simplicity, PPSCs will be discussed herein as being limited in number of minutes only. However, one of skill in the art would appreciate that the embodiments described herein may similarly operate with PPSCs limited in duration (e.g., some number of minutes, days, weeks or months), number of bytes of data transferred or a combination of time, minutes and bytes of data transferred. Traditionally, short term pre-paid service contracts are established through the purchase of Subscriber Identity Module (SIM) cards. Interchangeable SIM cards containing the necessary provisioning data which allow access to a service provider's communication network may be purchased and inserted into a user's mobile device. Once activated, the service provider supporting the short term pre-paid service contract may monitor usage and deny access to the communication network once the service contract expires.

The SIM card is a removable memory chip or smart card used in GSM and UMTS mobile devices to store the necessary provisioning data, such as the service-subscriber key used to identify a mobile device to wireless communication networks, to enable the mobile device to access a particular communication network. User can use different mobile devices by simply removing the SIM card from one mobile device and inserting it into another. A typical low cost SIM card has a small memory, 2-3 KB, which may only be enough to contain provisioning data and perhaps a personal phone directory. Data stored in a SIM card is used by the phone directly. SIM cards with additional applications are available in many storage sizes, the largest being capable of storing up to 1 gigabyte of information. Smaller sized SIM cards, capable of storing up to 32 KB or 16 KB, are the most prevalent in areas with less-developed GSM networks.

The use of a SIM card is mandatory in GSM cellular telephone networks. SIM cards store network specific information used to authenticate and identify subscribers on the network, the most important of which are the ICCID, IMSI, Authentication Key (Ki), and Local Area Identity (LAI). The SIM also stores other carrier specific data such as the SMSC (Short Message Service Centre) number, Service Provider Name (SPN), Service Dialing Numbers (SDN), and Value Added Service (VAS) applications. The equivalent of a SIM card in UMTS cellular telephone networks is called the Universal Integrated Circuit Card (UICC). CDMA phones may contain an analogous Removable User Identity Module (RUIM).

While the portability of SIM cards makes them ideal platforms to distribute PPSCs, their use is not without disadvantage. For example, each of the short term pre-paid service contract SIM cards (pre-paid SIM) are provisioned with a pre-provisioned phone number. Each time a particular pre-paid SIM is inserted into a mobile device, the phone number of the mobile device will change. Consequently, each time the user replaces the pre-paid SIM, callers unaware of the pre-paid SIM replacement will be unable to contact the user's mobile device. In addition, because the pre-paid SIM replaces a user's personal SIM card, the user's personal data stored on the personal SIM card is unavailable to the user while the pre-paid SIM is in use. Also, each pre-paid SIM is typically serviced by a single service provider. If a user desires to utilize the communication network of another service provider, the user must remove the pre-paid SIM card and replace it with another. Thus, if the user travels outside of the region for which a particular SIM card is provisioned for, the user must replace the SIM card with another. This is the case of international travel.

Similarly, if the user wishes to access another service provider's communication network to take advantage of certain superior features, the user must also replace the SIM card with another. For example, some service providers may provide better voice communications while other service providers may provide better data communications. This constant replacement of physical SIM cards can be cumbersome. Not only must the user physically change out the SIM card, the user must also carry a variety of different SIM cards.

The various embodiments alleviate these problems by creating a virtual SIM (VSIM) card capability enabling portions of the mobile device's internal memory to store the provisioning information for a variety of service providers. The VSIM may be implemented on all mobile devices, including GSM, UMTS and CDMA varieties. A user may purchase a VSIM service contract (PPSC or otherwise) from any service provider and download the corresponding provisioning data for that service provider. The provisioning information may be loaded into the VSIM of the mobile device. Moreover, a user may store the provisioning information for multiple service contracts on the VSIM. Thereafter, users may switch service providers merely by accessing and implementing the stored provisioning information for the selected service contract. In instances where the user travels from one region to another (i.e., international travel), the user may quickly access and implement the appropriate provisioning information for the region in which the user is currently located. Additionally, it is possible for the user to maintain a constant phone number despite the changes to the implemented provisioning information. In this manner, callers may continue to contact the user's mobile device regardless of which service contract is currently enabled on the VSIM.

FIG. 1 illustrates an overall system of an embodiment wherein each service provider offering a VSIM service contract operates their own VSIM service contract provisioning (SCP) server 102-105. A user may purchase and obtain a VSIM PPSC or a VSIM monthly service contract (MSC) (collectively VSIM service contracts) by connecting to the service provider's VSIM SCP server 102-105 through a communication network 100 to download the appropriate provisioning data to support the desired service contract. The communication network 100 may be, for example, either a cellular telephone network or the Internet. For sake of simplicity, the various embodiments will be described as a mobile device 101 connected to a VSIM SCP server via a cellular telephone network. However, one of skill in the art would appreciate that a user may also connect to a VSIM SCP server via the Internet and subsequently transfer the provisioning data of the SCP to the mobile device VSIM. While FIG. 1 depicts four separate VSIM SCP servers 102-105, the number of VSIM SCP servers will depend on the number of service providers offering VSIM service contracts. The VSIM SCP servers 102-105 may contain internal memory storage units such as a mass storage disc drive, or may be in connection with a corresponding VSIM SCP database 106-109, which are capable of storing the provisioning data and account status for each individual VSIM service contract (PPSC or MSC) operating on the system. Each of VSIM SCP servers 102-105 and VSIM SCP databases 106-109 may be operated by different service providers. Additionally, each VSIM SCP server 102-105 and/or VSIM database 106-109 may offer a variety of service contracts to the user. For example, each VSIM SCP server 102-105 and/or VSIM database 106-109 may offer users either VSIM PPSCs or VSIM MSCs. Additionally, varying VSIM service contracts may provide which voice only services, data only services or a combination thereof.

The various embodiments may be implemented on any of a variety of mobile devices, such as, for example, cellular telephones, personal data assistants (PDA) with cellular telephone, mobile electronic mail receivers, mobile web access devices, and other processor equipped devices that may be developed in the future. In addition, the embodiments described above may be implemented on any of a variety of computing devices, including but not limited to desktop and laptop computers.

FIG. 2 depicts typical components of a mobile device 101 capable of supporting the various embodiments. A typical mobile device 101 includes a processor 191 coupled to internal memory 192 and a user interface display 11. The internal memory 192 includes a VSIM memory unit 193 which is used to store the provisioning information of a plurality of VSIM PPSC accounts. The VSIM memory unit 193 may be a partition within the mobile device internal memory 192 or may be a separate internal memory unit (i.e., a separate memory chip). In addition, the VSIM memory unit 193 may store personal data downloaded from a VSIM server 130 for use with applications being executed on the mobile device processor 191.

The mobile device 101 may include an antenna 194 for sending and receiving electromagnetic radiation that is connected to a wireless data link and/or cellular telephone transceiver 195 coupled to the processor 191. In some implementations, the transceiver 195 and portions of the processor 191 and memory 192 used for cellular telephone communications are referred to as the air interface since the combination provides a data interface via a wireless data link. Further, the mobile device 101 includes a speaker 18 to produce audible sound and a microphone 19 for sensing sound, such as receiving the speech of a user. Both the microphone 19 and speaker 18 may be connected to the processor 191 via a vocoder 199 which transforms analog electrical signals received from the microphone 19 into digital codes, and transform digital codes received from the processor 191 into analog electrical signals which the speaker 18 can transform into sound waves. In some implementations, the vocoder 199 may be included as part of the circuitry and programming of the processor 191.

The processor 191 may be any programmable microprocessor, microcomputer or multiple processor chip or chips that can be configured by software instructions (applications) to perform a variety of functions, including the functions of the various embodiments described below. In some mobile devices, multiple processors 191 may be provided, such as one processor dedicated to wireless communication functions and one processor dedicated to running other applications. Typically, software applications may be stored in the internal memory 192 before they are accessed and loaded into the processor 191. In some mobile devices, the processor 191 may include internal memory sufficient to store the application software instructions. For the purposes of this description, the term memory generally refers to all memory accessible by the processor 191, including the internal memory 192, the VSIM memory unit 193 and memory within the processor 191 itself The internal memory 192 and the VSIM memory unit 193 may be volatile or nonvolatile memory, such as flash memory, or a mixture of both. In a preferred embodiment, the VSIM memory unit 193 is nonvolatile memory in order to retain the service contract provisioning data when the mobile device is turned off. Mobile devices also typically include a key pad 13 and menu selection buttons or rocker switches 12 for receiving user inputs.

FIG. 3 illustrates a process flow of example method steps that may be performed to acquire VSIM service contract provisioning data. In operation, a mobile device 101 may be programmed with sufficient general provisioning data stored in the VSIM memory unit 193 which permits the mobile device 101 to connect with a wireless data network for the limited purpose of communicating with any of VSIM SCP servers 102-105. While the general provisioning data will not allow the mobile device 101 to establish normal communications, it will allow the mobile device 101 to connect with VSIM SCP servers 102-105 in order to purchase selected service contract provisioning data. Each VSIM SCP server 102-105 may be operated by a different service provider but some service providers may operate a number of VSIM SCP servers so as to offer different types of service contracts, address different regions or provide redundant capability. The mobile device 101 may have stored in its internal memory 192 or the VSIM memory unit 193 a list of server network addresses (e.g., IP address or URL) for servers of various carriers within different regions offering VSIM service contracts. These server network addresses and the corresponding service providers may be listed by region, country, or continent, for example.

Referring to FIG. 3, if the menu is organized by regions (versus service carrier) the list of possible regions may be displayed to the user on the mobile device display 11, step 201. This menu may be presented upon the occurrence of a variety of events including, but not limited to initial power-up, when a previously purchased VSIM PPSC has expired, or whenever the mobile device 101 determines that its current provisioning data will not operate in its current location. The user may select a region for which the user desires to purchase a VSIM service contract by using any of a variety of user interface keys 12, 13 and switches incorporated within the mobile device 101. The region selection is received by the mobile device processor 191, step 202, which in turn prompts the user with a list of possible VSIM service contract service providers for the selected region, step 203. Again using any of a variety of user interface keys 12, 13 and switches incorporated within the mobile device 101, the user selects a VSIM service contract service provider from the displayed list. The user selection of service contract service providers is received by the processor 191 of the mobile device 101, step 204. Based upon the received VSIM service contract service provider selection, the mobile device processor 191 accesses the corresponding server network address, initiates a communication link and logs in, step 205.

Once logged in to the appropriate VSIM SCP server (102-105), the mobile device may receive a list of VSIM service contract options and present these in a display prompting the user to make a selection, step 206 These VSIM service contract options may include PPSCs vs. MSCs as well as varying combinations of voice and data plans, as well as various durations or usage restrictions, for example. In response, the user selects a service contract option from the displayed list. The user's selection of a service contract option is received by the processor 191 of the mobile device 101, step 207, and transmitted to and received by the selected VSIM SCP server (102-105), step 208. Based upon the received selection, the service contract provisioning data is downloaded to the mobile device VSIM memory unit 193 by the VSIM SCP server (102-105) via the established data connection, step 209. Finally, the VSIM service contract is enabled and activated on the mobile device 101, step 210. The selected VSIM service contract may be enabled by loading the corresponding provisioning data into a VSIM provisioning data buffer 314 (see FIG. 7) or by directing the mobile device processor 191 to the memory location storing the corresponding provisioning data via a pointer list.

As part of the enabling and activation step, codes identifying the mobile device 101 may be transmitted to the selected VSIM SCP server (102-105) and stored with other VSIM service contract account data in either in the mass storage device of the VSIM SCP server (102-105) or in a corresponding VSIM SCP database 106-109. The stored mobile device identifying codes and service contract account data will allow the VSIM SCP service provider to monitor individual VSIM service contract accounts to enable communications so long as the VSIM service contract remains valid. As an alternative step (not shown), any of a number of well known electronic payment and e-commerce methods may be implemented to handle the exchange of funds prior to the downloading of provisioning data to the VSIM memory unit 193.

In order to establish and route wireless communication calls, conventional mobile devices and service networks are assigned special codes. These codes, which are described below, identify the individual mobile device 101 to the various communication networks and identify accessed networks to the mobile devices. Without the proper codes, no communication link may be established. Thus, to provide a mobile device 101 with a VSIM service contract, the network identifying codes are downloaded in the VSIM service contract provisioning data and the mobile devices' identifying codes are uploaded into the VSIM service contract account data stored in the mass storage device VSIM SCP server (102-105) or corresponding VSIM SCP database (106-109). The VSIM SCP server (102-105) handling the mobile device's 101 VSIM service contract account uses the mobile device's identifying code to validate the mobile device 101 each time it attempts to gain access to a communication network and monitor the mobile device's 101 usage in order to determine whether the VSIM service contract account is valid. For example, in instances where the VSIM service contract is a PPSC, the VSIM SCP server (102-105) may determine whether the VSIM PPSC has expired or not. If the VSIM PPSC has expired, the VSIM SCP server (102-105) may offer the user an opportunity to “re-charge” the VSIM PPSC account by purchasing more pre-paid service (e.g., purchasing more minutes), or deny the mobile device 101 access to a communication network after expiration if the user refuses to purchase more service time.

The identifying codes include:

(a) an Electronic Serial Number (ESN), which is a unique 32-bit number programmed into the mobile device when it is manufactured;

(b) a Mobile Identification Number (MIN), which is a 10-digit number derived from the unique phone number assigned to the mobile device;

(c) a System Identification Code (SID), which is a unique 5-digit number that is assigned to each wireless service provider by the FCC; and

(d) a Preferred Roaming List (PRL) for CDMA-type mobile devices/Public Land Mobile Network (PLMN) for GSM-type mobile devices which is a priority listing of approved SID's which the service provider provides to the mobile device in order to determine which network SIDs the mobile device is allowed to utilize for service.

While the ESN is considered a permanent part of the mobile device 101, the MIN, SID and PRL/PLMN are programmed into the VSIM 193 when a VSIM service contract is purchased and activated. Each time a mobile device 101 accesses a communication network, either the EIN or MIN is checked by the VSIM SCP server to insure that the VSIM service contract is still valid. If the VSIM service contract is valid the VSIM SCP server will connect the communication request and begin decrementing the remaining time if the VSIM service contract is a PPSC account or increment the usage time if the VSIM service contract is a MSC. In this way, the service provider can insure that the mobile device 101 is only permitted access to the communication network in accordance with the terms of the VSIM service contract.

As part of the downloaded provisioning data, CDMA-type mobile devices are programmed with a PRL. GSM-type mobile devices are provisioned with a PLMN, which operates similar to the PRL. For simplicity, the embodiments are described using CDMA terminology. However, similar embodiment systems and methods may be implemented in a GSM-type mobile devices in similar manner.

While a user of a mobile device 101 may purchase a VSIM service contract from a particular service provider, the service provider may have agreements with other service providers to enable its customers to utilize the communication networks of other service providers. This allows a service provider to provide its customers with a broader coverage zone without the need to install its own equipment across the entire coverage zone. In some situations this is sometimes referred to as “roaming.” Thus, when a user purchases a VSIM service contract through a particular service provider, the user may be given access to and use of other service providers' communication networks. The PRL is a prioritized list of the alternative communication networks that a user may access if the primary communication networks are not available.

In any given region, multiple wireless and cellular communication networks may be operated by multiple service providers. Also, other private and/or non-commercial communication networks may be operating in a region. In order to determine which communication network a mobile device 101 may utilize in a given region, the mobile device 101 accesses the downloaded PRL for the selected service contract stored in the VSIM 193 to determine which channels or analog frequencies will be scanned and in what priority order to establish a communication link.

The PRL is maintained in such a manner that the mobile device can readily determine which communication networks cover common geographical regions. The references to common geographic regions refers to areas of common radio coverage. Moreover, the communication networks providing service in a common geographical region are prioritized, i.e., ranked from most desirable to least desirable. The mobile device is programmed to attempt to acquire service beginning with the available most desirable communication network in the mobile device's current geographical area. There is no point in trying to acquire service on a communication network outside of the mobile device's current geographic region since communication networks typically provide service only within a limited geographic region.

On many communication networks, regularly updating the PRL is advised if the user operates the mobile device outside the home system frequently, particularly if they do so in multiple different areas. This allows the mobile device to choose the best roaming carriers, particularly “roaming partners” with whom the home system has a cost-saving roaming agreement, rather than using non-affiliated carriers. PRL files can also be used to identify a home system along with roaming partners, thus making the PRL an actual list that determines the total coverage of the user, both home and roaming coverage.

Associated with each communication network in the PRL is a system ID (SID), as well as corresponding acquisition parameters (band, channel, etc.) for each communication network. The PRL is created, loaded and updated by the VSIM service contract service provider. When a user purchases and enables a VSIM service contract, the provisioning data that is downloaded into the VSIM 193 of the mobile device 101 replaces the previous PRL so that the SID and acquisition parameters for the new communication network is recognized by the mobile device 101.

The PRL is maintained by the service provider and is normally not accessible to the user. Many service providers provide the ability for the user to download the latest PRL to their device by dialing an Over-the-air (OTA) feature code, such as *228. Alternatively, the latest PRL may be downloaded into the mobile device via a hardwire connection.

The PRL includes two tables (along with some header and overhead information). The two tables are a System Table and an Acquisition Table. The System Table is a prioritized list of communication networks that the mobile device is permitted to access (home system and roaming networks). Each communication network entry in the system table belongs to a geographic area known as a GEO. Each entry also provides an acquisition table index where the frequencies associated with that particular communication network are identified and a roaming indicator that dictates the type of indication that should be displayed to the user when they are receiving service from that network. The Acquisition Table is an indexed list of frequencies on which the mobile device may search for particular networks. The acquisition table optimizes network acquisition time by identifying a limited number of frequencies that should be searched by the mobile device, rather than requiring the mobile device to search the entire frequency spectrum.

FIG. 4 illustrates an exemplary system table and acquisition table for a PRL for a particular geographic region. The Acquisition Table 152 contains records that list communication channels or frequencies in a priority contact order from top to bottom. For the Acquisition Table as shown, for example, a mobile device would contact PCS CDMA Block B channels first, then Block A channels, then channels 283, 699, 384, and 777. If the mobile device cannot contact these CDMA channels, the mobile unit would attempt to contact the network using Cellular Analog System A frequencies.

The PRL's System Table 151 contains records having several fields. The “SID” field contains the System Identification number of preferred communication networks. The “selection preference” identifies the relative priority of each network in terms of connection desirability. As shown, for example, it is more desirable for the mobile device to connect with the enabled VSIM service contract home system SID than any other network. The “Roaming Indicator” field indicates a roaming indication display status on the mobile device as either “off” or “on” depending on which network the mobile device is connected to. Typically, if the mobile device is connected to the home system of the enabled VSIM service contract, then the roaming indicator will be off. The “Acquisition Index” field refers back to the Acquisition Table record number associated with a SID. Thus, the “Acquisition Index” field entry indicates the channel(s) or frequency(ies) associated with the particular SID. As shown, for example, the SID of the home system (Acquisition Index 0) is associated with PCS CDMA Block B channels (Acquisition Table record 0). Similarly, SID of Roaming Partner 3 (Acquisition Index 3) is associated with Cellular Analog System frequencies (Acquisition Table record 3).

Thus, when the mobile device 101 downloads the VSIM service contract provisioning data (step 209) into the VSIM memory unit 193, the mobile device 101 downloads the PRL corresponding to the VSIM service contract. By downloading a PRL from the VSIM SCP server (102-105) and/or VSIM SCP database (106-109) into the VSIM memory unit 193 of the mobile device 101, the mobile device 101 is provided with all of the necessary parameters to establish a communication link with the communication network supporting the VSIM service contract.

FIG. 5 illustrates an exemplary system diagram of a mobile device 101 using a VSIM service contract to establish a call. When a mobile device 101 selects a VSIM service contract account to establish a call, the mobile device 101 will locate the provisioning data for the selected VSIM service contract in the VSIM memory unit 193 and may copy the selected VSIM service contract PRL into the active call application memory. The VSIM memory unit 193 may contain the provisioning data for a plurality of VSIM service contracts. The selected VSIM service contract may be any of the varying types of VSIM service contracts offered on the VSIM SCP server (102-105) and/or VSIM SCP database (106-109). This step essentially swaps out the selected VSIM service contract PRL for the PRL previously in memory. Using the selected VSIM service contract PRL, the mobile device uses the listed frequencies to acquire a communication network via a base station 120 and make a request to complete a voice or data call. The base station 120 may be part of a communication network listed in the downloaded PRL that operates as a portal to the cellular telephone network 122. The base station 120 may be in communication with a server 121 that receives the communication request from the mobile device 101 via the base station 120. The communication request may include VSIM service contract account information indicating which service provider is supporting the selected VSIM service contract account and the EIN/MIN of the mobile device 101 making the communication request. Based upon the VSIM service contract account information, the communication request is routed via the cellular telephone network 122 to the VSIM SCP server (shown in FIG. 5 as 102) supporting the VSIM service contract account. The VSIM SCP server may refer to data stored in either the mass storage of the VSIM SCP server or a corresponding VSIM SCP database (106) to validate the VSIM service contract account and requesting mobile device 101. If the VSIM service contract account is still valid (e.g., there is sufficient access time remaining in the PPSC account or the MSC is still active), the VSIM SCP server (102) validates the VSIM service contract account and authorizes the connection of the mobile device 101 to its intended recipient. The intended recipient may be another mobile device 125, a server hosting data 126, a computing device 127, and/or landline telephone 129. The call may then be routed through the cellular telephone network 122 to the intended recipient. In instances where a wireless device (e.g., mobile device 125 or computing device 127) is the intended recipient, the call may be routed through a second base station 128. Alternatively, the intended call may be routed through the conventional telephone network 122 to the intended recipient via landline connections.

FIG. 6 illustrates a process flow of steps that may be performed to connect a call using a VSIM service contract. A user of a mobile device 101 may have a number of different VSIM service contract accounts stored in the mobile device VSIM memory unit 193. The user must first select which VSIM service contract account the user desires to implement to connect the call, step 220. Using the PRL data associated with the selected VSIM service contract account, the mobile device 101 will establish a communication link with an available communication network and make a call request, step 221. Based on the VSIM service contract account data included in the call request, the VSIM SCP server (shown in FIG. 5 as 102) may be contacted in order to validate the VSIM service contract account, step 222. To validate the VSIM service contract account, the relevant data identifying the VSIM service contract account and the mobile device 101 (EIN/MIN) will be transmitted to the VSIM SCP server 102. Once the identifying information is received by the VSIM SCP server 102, the identifying data is used to access the VSIM service contract account data stored on either the mass storage device of the VSIM SCP server 102 or a corresponding VSIM SCP database 106. The VSIM SCP server 102 will check the VSIM service contract account data to insure that the VSIM service contract account is still valid, decision 225.

If the VSIM service contract account is not a valid account (i.e., decision 225=No) then the VSIM SCP server may optionally return a message to the mobile device 101 indicating that the VSIM service contract account is invalid and providing the user of the mobile device 101 with the option of purchasing a valid VSIM service contract account, decision 227. If the user responds in the affirmative (i.e., decision 227=Yes) then the mobile device and VSIM SCP server may implement steps 201-210 shown in FIG. 3 to allow the user of the mobile device 101 to purchase a valid VSIM service contract account, step 228. Thereafter, the newly activated VSIM service contract may be used to connect the call, step 231. Alternatively, if the optional step of providing the user with the ability to purchase a valid VSIM service contract account is not offered, then the call is simply terminated, step 232. Similarly, if the user declines to purchase a valid VSIM service contract account (i.e., decision 227=No), then the call is terminated, step 232.

If, however, the VSIM service contract account is valid (i.e., decision 225=Yes), then the VSIM SCP server 102 will determine if there are sufficient minutes left on the VSIM service contract account to support the call request, decision 226. In the case where the VSIM service contract is a MSC, this determination may entail determining whether there are sufficient “in-plan” minutes or if overage minutes apply. In the case where the VSIM service contract is a PPSC, this determination may entail determining if sufficient minutes are left on the PPSC. A pre-determined number of minutes threshold may be used to determine if “sufficient” minutes are available on the VSIM service contract account. If there are sufficient minutes left on the VSIM service contract account (i.e., decision 226=Yes), then the call is connected using the VSIM PPSC account data, step 231. The VSIM SCP server 102 will continue to monitor the call after it is connected to determine how many minutes should be counted against the VSIM service contract account once the call is completed. Alternatively, the VSIM SCP server 102 may decrement minutes from the VSIM PPSC account as the call proceeds so that the caller can be notified if the call results in the minutes remaining falling below the threshold during the call.

If there are not sufficient minutes left on the VSIM service contract account, such as if all prepaid minutes have been used or if all “in-plan” minutes have been used, (i.e., decision 226=No), the VSIM SCP server may send a message to the mobile device 101 indicating that the VSIM service contract account is expired or nearly expired and providing the user of mobile device 101 with an option to recharge the VSIM service contract account, decision 229. If the user elects to recharge the VSIM service contract account (i.e., decision 229=Yes), then the time remaining on the VSIM service contract account is reset or set to the number of additional number of minutes purchased, step 230, and the call is connected as requested, step 231. If, however, the user declines to recharge the VSIM service contract account, then the call request is terminated, step 232.

In an embodiment, the VSIM SCP server may decrement time from the VSIM service contract while the call is ongoing. If the time remaining on the VSIM service contract account then falls below the threshold minutes, the VSIM SCP may alert the caller, such as by placing the call on hold and offering the caller an opportunity to recharge the account, step 229. If the user elects to purchase additional time, the account balance is reset accordingly, step 230, and the call continues (step not shown but similar to step 231). However, if the user elects not to purchase additional time(i.e., decision 229=No), the call may be terminated as soon as the remaining balance reaches zero, step 232.

FIG. 7 illustrates a mobile device hardware/software architecture 300 in conjunction with a VSIM hardware/software architecture 310. When the mobile device 101 is functioning, various applications 306 operate on or request services from the mobile device's various hardware elements. For example, these hardware elements may include the processor and internal memory, input elements such as a keyboard or microphone, output elements such as the display or speaker (none shown) and communication units such as cellular transceivers, Global Positioning System (GPS) receivers, WiFi wireless transceivers, and Bluetooth local wireless transceivers. Some applications 306 may access the mobile device's cellular transceiver to initiate a telephone or data call. In order to initiate a telephone or data call, the application 306 will need to access the provisioning data stored in the VSIM memory unit 193. The application 306 requests this provisioning data through the hardware/software architecture 300 and 310. As illustrated in FIG. 7, applications 306 may communicate with the device operating system 304 via an API layer 305. The API layer 305 contains code that an operating system 304 provides to support requests for processor services to be made of it by the applications 306. The operating system 304 performs basic tasks such as controlling and allocating memory, prioritizing system requests, controlling input and output devices, facilitating networking and managing file systems. The operating system 304 communicates with the various device resources via the physical layer 303. The one or more driver layers 302 may be provided to control various device elements such as connected modems or transceivers. The driver layer 302 contains a specific type of computer software developed to allow interaction with a particular hardware element. Typically this constitutes an interface for communicating with the specific hardware element, through the specific computer bus or communications subsystem that the hardware element is connected to, providing commands to and/or receiving data from the hardware element, and on the other end, the requisite interfaces to the operating system 304 via the physical layer 303. The hardware interface 301 comprises the physical connections with the hardware device such as the socket or receptacle that the hardware element plugs into.

In the various embodiments, when an application 306 running on a mobile device 101 requests provisioning data stored in the VSIM memory 315, the data request propagates through the device hardware/software architecture 300 until the request reaches the hardware interface layer 301 and enters into the VSIM hardware/software architecture 310 via the VSIM hardware interface 311. This data access request may be by direct memory access and/or General Purpose Input/Output (GPIO). The VSIM hardware interface layer 311 may comprise the connector pins which may be the physical connection plugging the VSIM 193 into the mobile device 101 or it may be the bus connection that the VSIM 193 is connected to when the VSIM is built into the internal memory 192 of the mobile device 101. Once received in the VSIM hardware layer 311, the request for the provisioning data corresponding to the currently active VSIM service contract in the VSIM memory 314 that originated in the applications 306 propagates up the hardware/software architecture 310. The data request is communicated from the hardware interface 311 to the driver layer 312. As above, the driver layer 312 contains a specific type of computer software developed to allow interaction between the VSIM memory unit 193 in the physical layer 313 to the hardware interface 311. The data request then accesses data in the enabled VSIM provisioning data buffer 314, which is a memory block used to hold the provisioning data for the service provider currently selected for use. As a result, the currently selected VSIM service contract provisioning data 314 is accessed and the requested information pass back to the requesting application 306 in a reverse manner.

As described above, the VSIM memory unit 193 may contain a plurality of VSIM service contract account provisioning data sets 315 for different VSIM service contract accounts purchased by the user. When the user selects a particular one of the stored VSIM service contract accounts for use, such as a VSIM service contracts providing voice call services, the mobile device processor 191 accesses the selected VSIM provisioning data 315 via the access layers 311-313 as described above and copies the provisioning data into the enabled VSIM provisioning data buffer 314. Thereafter, access requests received from applications will be provided provisioning data from the enabled VSIM provisioning data buffer 314.

Alternatively, the provisioning data corresponding to each of the plurality of VSIM service contract accounts may be separately stored in locations within the VSIM memory unit 193. The mobile device processor 191 may maintain an enabled VSIM pointer in a buffer which points (by holding the memory address of the corresponding data) to the currently enabled VSIM service contract provisioning data. As different VSIM service contracts are selected to complete a voice or data call, the enabled VSIM pointer stored in the pointer buffer is changed to direct the mobile device processor 191 to memory location within the VSIM memory unit 193 of the currently selected VSIM service contract provisioning data.

The hardware/software architecture 300 and 310 illustrated in FIG. 7 is meant only as an illustration of one example organization of data and software for implementing the various embodiments. As will be appreciated by one of skill in the art of cellular handheld device design and programming, other software/hardware architectures may be used with equal effectiveness.

An alternative embodiment for providing VSIM service contract accounts is shown in FIG. 8. In this alternative embodiment, a single VSIM SCP server 110 acts as a central server to a plurality of VSIM SCP databases 106-109. For example, a mobile device 101 may connect to a single central VSIM SCP server 110 via a communication network 100. The single central VSIM SCP server 110 may communicate with a plurality of VSIM SCP databases (106-109) to allow the mobile device 101 to connect with a single VSIM SCP server 110 and obtain VSIM service contract accounts from a variety of service providers. As with the previous embodiment, the VSIM SCP databases 106-109 each contain the necessary provisioning data for each VSIM service contracts offered by each of the respective service providers. By providing a central VSIM SCP server 110, this embodiment may be used to permit users to be assigned a single telephone number even though the user may maintain a variety of VSIM PPSC and MSC accounts.

FIG. 9 illustrates alternative method steps that may be implemented to acquire a VSIM service contract account. In this embodiment, a single central VSIM SCP server is connected to a plurality of VSIM databases. Each of the plurality of VSIM databases is operated by a separate service provider to provide users with the ability to purchase any of the variety of VSIM service contracts that the service provider offers. In this embodiment, users connect to the central VSIM SCP server which in turn connects to a selected service provider's independent VSIM database to purchase a VSIM service contract offered by the selected service provider. In instances where the mobile device 101 is operating in an embodiment system such as the one shown in FIG. 8, where a single VSIM SCP server 110 connects to a plurality of VSIM SCP databases 106-109 operated by independent service providers, additional mobile device 101 internal memory 192 may not be required to store multiple server network addresses as in other embodiments. Rather, the user of mobile device 101 may simply connect with a single VSIM SCP server 110 each time the user wishes to purchase a new VSIM service contract, so only the one server VSIM SCP network address is stored in memory. For example, if the user is planning to travel internationally, before the trip the user can log onto the VSIM SCP server 110 to purchase a PPSC for each country to which the user intends to travel. In instances where the VSIM SCP server 110 is being hosted by the user's conventional service provider, the additional VSIM service contracts could simply be billed to the user's long term account.

In the embodiment illustrated in FIG. 9, a communication link between the mobile device 101 is established with the VSIM SCP server 110, step 240. Once the mobile device 101 has logged into the VSIM SCP server 110, the mobile device 101 downloads and displays a list of regions for which the user may purchase a VSIM service contract account through the VSIM SCP server 110, step 241. These regions may be listed, for example, by region, country, or continent. The user may select the region that the user desires by using any of a variety of user interface keys 12, 13 and switches incorporated within the mobile device 101. The user selection is transmitted to the VSIM SCP server 110, step 242. Based upon the user selection, the VSIM SCP server 110 downloads a list of possible VSIM service contract providers for the selected region to the mobile device 101 for display to the user, step 243. Again using any of a variety of user interface keys 12, 13 and switches incorporated within the mobile device 101, the user selects a VSIM service contract provider from the displayed list. The user's selection of VSIM service contract providers is transmitted to the VSIM SCP server 110, step 244.

Based upon the received selection, the VSIM SCP server 110 initiates a communication link with the VSIM SCP database (106-109) corresponding to the selected VSIM service contract provider, step 245. Once logged in to the appropriate VSIM SCP database (106-109), the list of VSIM service contract options is downloaded and transmitted to the mobile device 101 for display to the user, step 246. These VSIM service contract options may provide varying combinations of voice, data, voice and data plans, as well as varying durations of access. Using any of a variety of user interface keys 12, 13 and switches incorporated within the mobile device 101, the user selects a VSIM service contract option from the displayed list. The user's VSIM service contract option selection is transmitted to and received by the selected VSIM SCP database (106-109) via the VSIM SCP server 110, step 247.

Based upon the transmitted selection, the VSIM service contract provisioning data is downloaded from the VSIM SCP database (106-109) to the VSIM SCP server 110 which transmits the information to the mobile device 101 which stores the information in the VSIM memory unit 193, step 248. Finally, the VSIM service contract is enabled and activated on the mobile device 101, step 249. As part of the enabling and activation step, codes identifying the mobile device 101 may be transmitted to the selected VSIM SCP database via the VSIM SCP server 110 to be stored with the other VSIM service contract account data in the selected VSIM SCP database 106-109. Storing the identifying code and account data will allow the VSIM service contract provider to monitor individual VSIM service contract accounts and enable communications so long as the VSIM service contract is valid. As an alternative step (not shown), any of a number of well known electronic payment and e-commerce methods may be implemented to handle the exchange of funds prior to the downloading of provisioning data to the mobile device 101.

In other embodiments, some service providers may elect to operate their own independent VSIM SCP servers 102-105 (see FIG. 1) and VSIM databases 106-109, while other service providers operate an independent VSIM database 106-109 connected to a central VSIM SCP server 110. In such an embodiment, the system may contain both independent and central VSIM SCP servers. In such an embodiment, the process flow shown in both FIGS. 3 and 8 may be implemented depending upon which VSIM SCP server (independent or central) hosts the selected service provider's VSIM service contract.

An alternative embodiment for providing both VSIM service contract accounts as well as user personal VSIM data is shown in FIG. 10. In instances where users do not have their personal mobile device 101 on hand, users may rent or borrow a mobile device 101 a. In other instances, a user may purchase a disposable mobile phone. In any case, when users are without their own mobile device 101 they may require not only a VSIM service contract account but also access to the personal data stored on their own mobile device 101. In other instances, users may have their own mobile device 101, but have lost personal data from the internal memory 192 of the mobile device 101. This alternative embodiment system and method allows users to access a VSIM service contract account and download personal data that has been backed up on a remote VSIM storage unit 130/132. A more complete description of the remote VSIM storage unit 130/132 is provided in U.S. patent application Ser. No. 11/963,918 entitled “Virtual SIM card for Mobile Handsets”, the entire contents of which are hereby incorporated by reference. For sake of simplicity, FIG. 10 and the description herein discusses the borrowed, rented or purchased mobile device 101 a. However, a user may also implement the embodiment method and system using the user's personal mobile device 101.

FIG. 10 illustrates an overall architecture of an embodiment wherein a rented or purchased mobile handset 101 a communicates over a cellular telephone network with a VSIM server 130 to send and receive both VSIM service contract provisioning data and backed up personal data. A mobile device 101 a may be programmed with general provisioning data stored in an internal memory unit 192 which permits the mobile device 101 a to communicate with a VSIM server 130 over a cellular telephone network 100 a. The VSIM server 130 may be coupled to an authentication server 131 such as by way of a wired, fiber optic or wireless network connection. The VSIM server 130 may contain internal memory storage units such as a mass storage disc drive, or may be in connection with a VSIM database 132, which is capable of storing the personal data information for each individual mobile handset operating on the system. Similarly, the authentication server 131 may contain internal memory storage units such as mass storage disc drives, or may be connected to an authentication database 133, which is capable of storing the authentication credentials for each individual VSIM account operating on the system. In an embodiment, the VSIM server 130 may also act as the authentication server 131 by incorporating authentication functions within the VSIM server software and providing sufficient memory storage units.

Since sensitive personal data, mobile device provisioning information, and authentication and verification information, may be transmitted back and forth between the mobile handset 101 a and the VSIM server 130, the VSIM server 130 and the mobile device processor 191 can be configured with software to encrypt such information using known data encryption and key methods to protect data from unauthorized viewing. Information stored in the VSIM 193 is backed up and maintained on the external VSIM server 130.

The VSIM services provided by the VSIM server 130 may be offered to mobile device users as a standard feature of service or as an extra subscription fee service. This architecture allows the provisioning and personal information to be uploaded to the VSIM memory unit 193 at any time, providing flexibility in provisioning and programming new mobile devices. This architecture also provides users with an external backup of personal data which preserves their personal data even if the entire mobile device 101 is lost. By logging onto the VSIM server 130 via the cellular telephone network, users may backup their personal data to the VSIM server 130 and/or VSIM database 132. Then, even if the entire mobile device 101 is lost or destroyed, their personal data is preserved, ready for reloading onto a replacement mobile device.

To restore their personal data or to move their personal data to a rented or borrowed mobile device provisioned with a VSIM service contract, users log onto the VSIM server 130 via the cellular telephone network, authenticating themselves by transmitting authentication credentials for comparison against authentication credentials previously stored in the authentication database 133. Authenticated users are able to restore their personal data and, optionally, provisioning information to a replacement, rented or mobile device by having the information downloaded directly into the VSIM memory unit 193. Users who are not authenticated are denied access to the VSIM database 132. In addition, the VSIM server 130 may act as a central VSIM SCP server similar to the central VSIM SCP server 110 described above with reference to FIG. 9 by being connected to at least one VSIM SCP database (106, 107) to permit users to purchase a VSIM service contract.

FIG. 11 illustrates an overview of a process for purchasing a VSIM service contract and retrieving personal data stored in a VSIM server 130 and/or VSIM database 132 to the mobile device 101 a. Upon power up of the mobile device 101 a or any other interval preset by the user or service provider, the mobile device 101 a establishes a wireless communication link via a cellular telephone network to the VSIM server 130, step 250. Once the communication link has been established, log in to the VSIM server 130 is accomplished, step 251. As part of the login process, the user may be prompted to enter the user's account information via the mobile device 101 a keyboard, step 252. The account name may be automatically received by the VSIM server 130, such as if the phone number associated with the mobile device 101 a is used as the user account name. The user may also be prompted to enter authentication credentials, step 253. Any of a number of authentication credential forms may be employed, including password verification, biometric recognition, and combinations thereof Once entered into the mobile device 101 a, the authentication credentials are preferably encrypted by the mobile device 101 a processor and transmitted via the cellular telephone network to the VSIM server 130, step 254, which may transmit the data to the authentication server 131, step 255.

The VSIM server 130 and/or authentication server 131 decrypts the received user account and authentication credential data, step 256. The processor of either the VSIM server 130 or authentication server 131 accesses the stored authentication credentials associated with the user accounts, step 257. The decrypted received authentication credentials are compared to authentication credentials previously stored in the authentication database 133 to authenticate the user and verify that an authorized user is attempting to log in, decision 258. If the authentication credentials match (i.e., decision 258=Yes), the user is authenticated and access is granted to the user account files stored within the VSIM database 130, step 259.

Once access has been granted, the user may upload/backup personal data from the mobile device 101 a VSIM to the VSIM database 132 via the VSIM server 130, or restore personal data to the mobile device 101 a memory, step 260. During a backup procedure, personal data is transmitted from the VSIM memory unit 193 of the mobile device 101 a to the VSIM database 132 via the VSIM server 130. During the restore operation, personal data is transmitted from the VSIM database 132 to the mobile device 101 a and stored in its VSIM memory unit 193. The user may also perform other operations, such as modifying personal data stored within the VSIM database 132. A data modification procedure may be similar to the backup procedure. So long as access is granted to the user, personal data may flow from the mobile device's 101 a VSIM memory unit 193 to the VSIM database 132 via the VSIM server 130 and vice versa.

Once the user has completed the desired personal data backup, restore, modify procedures, step 260, the mobile device 101 a may obtain and use a VSIM service contract account to complete voice and data calls. The mobile device 101 a may implement the process flow shown in FIG. 9 to allow the user of mobile device 101 to select and purchase a valid VSIM service contract account via a central VSIM server 130, step 261. Once the VSIM service contract provisioning data has been downloaded, the mobile device 101 a may log off from the VSIM server 130, step 262.

If, when presented, the authentication credentials do not match, the authentication server 131 will deny access to the VSIM database 132 via the VSIM server 130. As shown in FIG. 11, a flag may be set or a count established to record the number of unsuccessful authentication attempts, step 263. If the number of unsuccessful authentication attempts exceeds a preset number (i.e., decision 264=Yes), the user may be logged off by the VSIM server 130, step 262. Otherwise if the number of unsuccessful authentication attempts is less than the preset number (i.e., decision 264=No), the user may be prompted to attempt to authenticate again, step 253. In alternative embodiments, the method may simply allow unlimited authentication attempts, in which case it would not be necessary to perform the initiate counter step 263 or determine if too many attempts had occurred as in decision 264.

As discussed above, to insure quality of service (QOS), service providers may often update the PRL as the mobile device 101 moves within a coverage zone or from one geographic area to another. Because different communication networks operate in different geographic areas it is important to update the selected VSIM service contract PRL to insure that as the mobile device moves into different geographic areas the list of possible communication networks that it may connect to is accurate. The updated VSIM service contract PRL may re-prioritize the listing of available VSIM service contract supported networks or may revise the list to include or remove other networks from the list depending on the current location of the mobile device 101.

While each VSIM service contract service provider attempts to maintain a high QOS for its customers, in some instances a VSIM service contract service provider may simply not provide its customers with access to the appropriate communication networks in a geographic area to provide a high QOS. Thus, merely updating the PRL may not be sufficient to provide the customer with a high QOS (or any service). For example, while a service provider may operate in North America, the service provider does not provide its customers with access to communication networks in Europe. In order to obtain a high QOS, the user may have to switch service providers entirely. By maintaining multiple VSIM service contract accounts on the mobile device's VSIM memory unit 193, a user may quickly enable a new VSIM service contract account, such as by copying provisioning data of the selected new VSIM service contract account into the enabled VSIM provisioning data buffer 314. This swap out of VSIM service contract account data activates a new VSIM service contract account PRL to enable the mobile device 101 to access locally available communication networks.

Location may not be the only operational parameter value which suggests a change in VSIM service contract accounts. It may be beneficial to change VSIM service contract accounts when the mobile device is attempting different types of communication usage requests. For example, a particular VSIM service contract provider's communication network may be especially well suited to handle high speed data calls. However, access to the particular VSIM service contract provider's communication network may come at a premium expense. Accordingly, it would not be cost efficient to utilize the particular VSIM service contract provider's communication network for simple voice calls or data calls where the high speed capability is not required. In an embodiment method, when a mobile device 101 attempts to make a high speed communication data call, such as for Mobile TV or the downloading of large multimedia data files, the mobile device 101 may enable the VSIM service contract account supported by the particular service's provider communication network. In instances where the mobile device 101 is attempting to make a medium speed data call, such as for web browsing, a different VSIM service contract account might be enabled. In other instances where the mobile device 101 is attempting to make low speed data calls such as for MMS, yet another VSIM service contract account might be enabled. Different VSIM service contract accounts may be selected to support different communication usage requests. Alternatively, a different VSIM service contract account may be selected to support different provisioned services. For example, a different VSIM service contract account might be used to support: GSM only, GSM and GPRS, UMTS only, GSM, GPRS, UMTS, 1× only, 1× and EvDO. Additional VSIM service contract accounts may be stored to a mobile device's 101 VSIM memory unit 193 to support additional provisioned services. By storing various VSIM service contract account's provisioning data in a VSIM memory unit 193, such switching among alternative VSIM service contract accounts can be accomplished rapidly without the need to contact a VSIM SCP server.

In addition to location, communication usage request or service request, a VSIM service contract account may be selected based upon time of day, day of week, or even time of the year operational parameter values. Some service provider's communication networks may receive increased call volume during certain times of the day, days of the week, or even time of the year. The increased call volume may result in a decrease in QOS. Accordingly, a mobile device 101 may seek to avoid accessing those communication networks during periods of increased call volumes if alternative VSIM service contract accounts are stored within the VSIM memory unit 193.

FIG. 12 illustrates an embodiment process flow for the selection of an optimal VSIM service contract account from a plurality of VSIM service contract accounts stored in the VSIM memory unit 193 based upon location, communication usage request, and/or time operational parameter values. A mobile device processor 191 may execute a main loop which controls and monitors the activity of several applications and activities, step 270. During the execution of the main loop, the processor 191 may receive a request to either initiate a communication call, step 271, or purchase a new VSIM service contract account, step 272. In either case, the processor 191 may determine the current location of the mobile device 101, step 273. The location of the mobile device 101 may be determined using a variety of methods. For example, many mobile devices are equipped with an internal Global Positioning System (GPS) receiver which allows the processor of the mobile device to determine its position within 10 meters. Alternatively, when the mobile device 101 establishes a communication link with a base station, the base station may transmit location data back to the mobile device 101 indicating the position of the base station, thus allowing the mobile device 101 to determined that it is positioned within the range of the base station. Any other method of determining mobile device 101 location may be implemented.

In addition to determining mobile device location, the processor 191 may determine the type of communication usage request that is being made, step 274. The processor 191 of the mobile device 101 may make this determination by noting which application is initiating the communication call request. For example, if the SMS application is preparing to initiate a data call, then the mobile device processor 191 can easily determine that the type of communication usage will be SMS text. Similarly, if the web browser, mobile TV application or telephone seeks to initiate a communication call, the communication usage request may be easily determined. In addition to the location and type of communication usage request, the processor 191 determines the current month, day, time, step 275. Using these operational parameter values, the optimal communication network to complete the communication call request may be determined by comparing the determined operational parameter values to corresponding selection criteria, step 276. In instances where the internal memory 192 of the mobile device 101 is sufficiently large to store the information of all communication networks across the world then the determination can be performed by the mobile device processor 191. Alternatively, once the operational parameter values have been determined by the mobile device processor 191, the determined values may be transmitted to a central VSIM SCP server 110 supporting the current geographic location of the mobile device 101. Using the received determined values, the processor (not shown) of the VSIM SCP server 110 can determine the optimal VSIM service contract in the current geographic location to satisfy the mobile device's 101 needs by comparing the received values to selection criteria. This optimal VSIM service contract determination may be transmitted back to the mobile device 101.

Any of a variety of algorithms and selection criteria may be implemented to determine the optimal VSIM service contract based on collected operational parameter values. For example, an algorithm may first determine which locally available networks will support the communication usage request (i.e., speed of data service required). Next the algorithm may determine which of those locally available networks are the most cost effective for the intended usage. The algorithm may factor in the time (i.e., month, day, time) to determine cost effectiveness.

Once the optimal VSIM service contract is determined, the mobile device processor 191 determines if the optimal VSIM service contract is different from the VSIM service contract account currently enabled on the VSIM memory unit 193, decision 285. If the currently enabled VSIM service contract account is the same as the determined optimal VSIM service contract (i.e., decision 285=No), then the communication call may be established using the enabled VSIM service contract account in accordance with steps 221-232 described above with reference to FIG. 6, step 288.

If the VSIM service contract account currently enabled on the VSIM memory unit 193 is different from the determined optimal VSIM service contract (i.e., decision 285=Yes), then the mobile device processor 191 may access the mobile device VSIM memory unit 193 to determine if the optimal VSIM service contract has been previously stored to the VSIM memory unit 193, decision 286. If the optimal VSIM service contract has been previously purchased and stored on the mobile device's VSIM memory unit 193 (i.e., decision 286=Yes), then the mobile device processor 191 selects and enables the optimal VSIM service contract by copying the optimal VSIM service contract account provisioning data stored in the VSIM memory unit 193 into the enabled VSIM provisioning data buffer 314, step 287, and establish a call with the selected optimal VSIM service contract account in accordance with steps 221-232 described above with reference to FIG. 6, step 288. Alternatively, the mobile device processor 191 may select and enable the optimal VSIM service contract by retrieving the optimal VSIM service contract account provisioning data from the location within the VSIM memory unit 193 via a pointer, step 287. Once the call has been either connected or terminated in accordance with the process flow described above with reference to FIG. 6, the mobile device processor 191 may return to the main loop, step 270.

If the optimal VSIM service contract has not been previously purchased and stored on the mobile device's VSIM memory unit 193 (i.e., decision 285=No), then the mobile device's processor 191 may initiate the steps to purchase an optimal VSIM service contract account in accordance with steps 201-210 described above with reference to FIG. 3 or steps 241-249 described above with reference to FIG. 9, step 289. Once an optimal VSIM service contract account has been obtained and is stored in the mobile device VSIM memory unit 193, then the call may be established with the selected optimal VSIM service contract account in accordance with steps 221-232 described above with reference to FIG. 6, step 288. Once the call has been either connected or terminated in accordance with the process flow of FIG. 6, then the mobile device processor 191 may return to the main loop, step 270.

FIG. 13 illustrates a process flow of method steps according to an alternative embodiment. It may be the case that the algorithm used to determine the optimal VSIM service contract may select a VSIM service contract that is incompatible with the mobile device 101. For example, suppose the algorithm used to determine the optimal VSIM service contract in step 276 of FIG. 12 determines that a UMTS VSIM service contract is the optimal VSIM service contract. A CDMA 1× type mobile device is not compatible with a UMTS VSIM PPSC. Accordingly, the optimal VSIM service contract must be subsequently determined. The subsequent determination must eliminate any of the determined incompatible VSIM service contracts from consideration. This process may continue until an optimal VSIM service contract is determined that is also compatible with the mobile device 101.

As shown in FIG. 13, the alternative embodiment performs steps 270-276 in the same manner as the embodiment described above with reference to FIG. 12. Once the optimal VSIM service contract is determined in step 276, the processor 191 of the mobile device 101 determines if the optimal VSIM service contract is compatible with the mobile device 101, decision 277. If the optimal VSIM service contract is compatible with the mobile device 101 (i.e., decision 277=Yes), then the alternative embodiment continues to perform steps 285-289 just as described above with reference to FIG. 12.

If the optimal VSIM service contract is not compatible with the mobile device 101 (i.e., decision 277=No), then the incompatible VSIM service contract is removed from consideration, step 278, and another determination of the optimal VSIM service contract is made, step 276. In this manner, incompatible VSIM service contracts will be removed from consideration until a compatible optimal VSIM service contract is determined in step 276. As above, once a compatible optimal VSIM service contract is determined in step 276, the alternative embodiment continues by performing steps 285-289 as described above with reference to FIG. 12. In instances where the optimal VSIM service contract is determined by a remote central VSIM SCP server 110, data indicating the removal of the particular VSIM service contract from consideration may be transmitted to the VSIM SCP server 110 before a subsequent determination is made.

FIG. 14 illustrates a process flow of method steps in accordance with another alternative embodiment. It may also be the case that the algorithm used to determine the optimal VSIM service contract may select a VSIM service contract that is currently unavailable to the mobile device 101. While the algorithm used to determine the optimal VSIM service contract chooses from a list of theoretically available communication networks, in actuality the communication network may not be available to the mobile device 101 for a variety of reasons. For example, the mobile device 101 may be located in a specific location within the communication network's coverage zone that does not get reception, sometimes referred to as a “dead spot.” In other cases, atmospheric interference or an unexpected increase in call volume may prevent the mobile device 101 from establishing a communication link with the communication network supporting the determined optimal VSIM service contract. Accordingly, the optimal VSIM service contract must be determined a second time. The subsequent determination must eliminate any of the VSIM service contracts that are supported by the presently unavailable communication networks from consideration. This process may continue until an optimal VSIM service contract is determined that is also available to the mobile device 101.

As shown in FIG. 14, the alternative embodiment performs steps 270-276 in the same manner as the embodiment described above with reference to FIG. 12. Once the optimal VSIM service contract is determined in step 276, the processor 191 of the mobile device 101 determines if the communication network supporting the optimal VSIM service contract is available to the mobile device 101, decision 279. If the communication network supporting the optimal VSIM service contract is available to the mobile device 101 (i.e., decision 279=Yes), then the alternative embodiment continues to perform steps 285-289 as described above with reference to FIG. 12.

If the communication network supporting the optimal VSIM service contract is not available to the mobile device 101 (i.e., decision 279=No), then the processor 191 of the mobile device 101 determines whether there are any communication networks available, decision 280. It may be the case that the mobile device 101 is located in a geographic area in which the pilot signal cannot be received from any communication network, such as if the mobile device 101 is underground. If the mobile device 101 is not receiving the pilot signal from any communication network (i.e., decision 280=No), then the user may be notified of the situation, step 282, and the mobile device 101 processor 191 returns to the main loop, step 270. If the mobile device 101 processor 191 determines that other communication networks are available (i.e., decision 280=Yes), then the VSIM service contract supported by the unavailable communication network is removed from consideration, step 281, and the determination of the optimal VSIM service contract is made again, step 276. In this manner, unavailable VSIM service contracts (or VSIM service contracts whose supporting communication networks are unavailable) will be removed from consideration until an optimal VSIM service contract whose supporting communication network is available is determined in step 276. As above, once an available optimal VSIM service contract is determined in step 276, then the alternative embodiment continues to perform steps 285-289 as described above with reference to FIG. 12. In instances where the optimal VSIM service contract is determined by a remote central VSIM SCP server 110, data indicating the removal of the particular VSIM service contract from consideration may be transmitted to the VSIM SCP server 110 before a subsequent determination is made.

The foregoing method descriptions and the process flow diagrams are provided merely as illustrative examples and are not intended to require or imply that the steps of the various embodiments must be performed in the order presented. As will be appreciated by one of skill in the art the order of steps in the foregoing embodiments may be performed in any order.

The hardware used to implement the foregoing embodiments may be processing elements and memory elements configured to execute a set of instructions, including microprocessor units, microcomputer units, programmable floating point gate arrays (FPGA), and application specific integrated circuits (ASIC) as would be appreciated by one of skill in the art, wherein the set of instructions are for performing method steps corresponding to the above methods. Alternatively, some steps or methods may be performed by circuitry that is specific to a given function.

Those of skill in the art will appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.

The steps of a method or algorithm described in connection with the embodiments disclosed herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. The software module may reside in a processor readable storage medium and/or processor readable memory both of which may be any of RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or any other tangible form of data storage medium known in the art. Moreover, the processor readable memory may comprise more than one memory chip, memory internal to the processor chip, in separate memory chips, and combinations of different types of memory such as flash memory and RAM memory. References herein to the memory of a mobile handset are intended to encompass any one or all memory modules within the mobile handset without limitation to a particular configuration, type or packaging. An exemplary storage medium is coupled to a processor in either the mobile handset or the theme server such that the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium may be integral to the processor. The processor and the storage medium may reside in an ASIC.

The foregoing description of the various embodiments is provided to enable any person skilled in the art to make or use the present invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the invention. Thus, the present invention is not intended to be limited to the embodiments shown herein, and instead the claims should be accorded the widest scope consistent with the principles and novel features disclosed herein. 

1. A method for provisioning a mobile device, comprising: storing provisioning data for a plurality of service contracts in at least one remote database; receiving via a communication network a request from the mobile device to download provisioning data for at least two of the plurality of service contracts; and downloading the provisioning data for the at least two of the plurality of service contracts to a VSIM internal memory unit in the mobile device using the communication network.
 2. The method of claim 1, wherein the downloaded provisioning data for one of the at least two of the plurality of service contracts is for a pre-paid service contract.
 3. The method of claim 1, wherein the downloaded provisioning data for one of the at least two of the plurality of service contracts is for a monthly service contract.
 4. The method of claim 1, further comprising: storing a personal data for a user of the mobile device in a remote personal data database; receiving via the communication network an account name and an authentication credential from the user of the mobile device; authenticating the user based on the received account name and authentication credential; and downloading the personal data for the user stored in the remote personal data database to the VSIM internal memory unit using the communication network if the user is authenticated.
 5. A method for initiating a wireless communication call on a mobile device having stored thereon provisioning data for a plurality of service contracts in a VSIM internal memory unit, comprising: receiving a selection of one of the plurality of service contracts to support the wireless communication call; transferring provisioning data for the selected one of the plurality of service contracts to a VSIM provisioning data buffer; establishing a communication link to a communication network using the transferred provisioning data of the selected one the plurality of service contracts.
 6. The method of claim 5, wherein the provisioning data corresponds to a pre-paid service contract.
 7. The method of claim 5, wherein the provisioning data corresponds to a monthly service contract.
 8. A method for initiating a communication call from a mobile device having a VSIM internal memory unit having stored therein provisioning data for a plurality of service contracts, comprising: collecting a plurality of operational parameter values from the mobile device; determining an optimal one of the plurality of service contract based upon the collected operational parameter values; retrieving from the VSIM internal memory unit provisioning data corresponding to the optimal service contract; and establishing a communication link to a communication network using the retrieved provisioning data corresponding to the optimal service contract.
 9. The method of claim 8, wherein the collected plurality of operational parameter values comprises mobile device location, communication call usage type, and time.
 10. The method of claim 9, wherein the communication call usage type corresponds to the wireless communication call being initiated and comprises one type selected from the group consisting of voice call, low speed data call, medium speed data call, and high speed data call.
 11. The method of claim 9, wherein the provisioning data corresponding to the optimal service contract is retrieved from the VSIM internal memory unit.
 12. The method of claim 9, wherein the provisioning data corresponding to the optimal service contract is retrieved from a remote database accessed via a remote VSIM server and downloaded to the VSIM internal memory unit prior to establishing the communication link.
 13. The method of claim 9, wherein the optimal service contract is a pre-paid service contract.
 14. The method of claim 9, wherein the optimal service contract is a monthly service contract.
 15. The method of claim 8, further comprising: determining whether a communication network supporting the optimal service contract is compatible with the mobile device; removing all communication network types similar to the communication network supporting the optimal service contract from consideration if the communication network is determined to be incompatible with the mobile device; and repeating the step of determining the optimal service contract from service contracts remaining in the plurality of service contracts based upon the collected operational parameter values.
 16. The method of claim 8, further comprising: determining whether a communication network supporting the optimal service contractor is available to the mobile device; removing the communication network supporting the optimal service contract from consideration if the communication network is unavailable to the mobile device; and repeating the step of determining the optimal service contract from service contracts remaining in the plurality of service contracts based upon the collected operational parameter values.
 17. A server, comprising: means for storing provisioning data for a plurality of service contracts; means for receiving via a communication network a request from a mobile device to download provisioning data for at least two of the plurality of service contracts; and means for downloading the stored provisioning data for the at least two of the plurality of service contracts to a VSIM internal memory unit in the mobile device using the communication network.
 18. The server of claim 17, further comprising: means for storing personal data for a user of the mobile device; means for receiving via the communication network an account name and an authentication credential from the user of the mobile device; means for authenticating the user based on the received account name and authentication credential; and means for downloading the stored personal data for the user to the VSIM internal memory unit using the communication network if the user is authenticated.
 19. A mobile device, comprising: means for storing provisioning data for a plurality of service contracts; means for receiving a selection of one of the plurality of service contracts to support a wireless communication call; means for transferring provisioning data for the selected one of the plurality of service contracts to a VSIM provisioning data buffer; means for establishing a communication link to a communication network using the transferred provisioning data of the selected one the plurality of service contracts.
 20. A wireless communication system, comprising: means for collecting a plurality of mobile device operational parameter values; means for determining an optimal service contract based upon the collected plurality of mobile device operational parameter values; means for retrieving from memory provisioning data corresponding to the optimal service contract; and means for establishing a communication link to a communication network using the retrieved provisioning data corresponding to the optimal service contract.
 21. The wireless communication system of claim 20, wherein the plurality of operational parameter values comprises mobile device location, communication call usage type, and time.
 22. The wireless communication system of claim 21, wherein the communication call usage type corresponds to a wireless communication call being initiated and comprises one type selected from the group consisting of voice call, low speed data call, medium speed data call, and high speed data call.
 23. The wireless communication system of claim 21, wherein the means for retrieving from memory provisioning data corresponding to the optimal service contract retrieves provisioning data from a VSIM internal memory unit.
 24. The wireless communication system of claim 21, wherein the means for retrieving from memory provisioning data corresponding to the optimal service contract retrieves provisioning data from a remote database accessed via a remote VSIM server.
 25. The wireless communication system of claim 21, further comprising: means for determining whether a communication network supporting the optimal service contract is compatible with the mobile device; means for removing all communication network types similar to the communication network supporting the optimal service contract from consideration if the communication network is determined to be incompatible with the mobile device; and means for repeating the step of determining the optimal service contract from service contracts remaining in the plurality of service contracts based upon the collected operational parameter values.
 26. The wireless communication system of claim 21, further comprising: means for determining whether a communication network supporting the optimal service contract is available to the mobile device; means for removing the communication network supporting the optimal service provider from consideration if the communication network is unavailable to the mobile device; and means for repeating the step of determining the optimal service contract from service contracts remaining in the plurality of service contracts based upon the collected operational parameter values.
 27. A server, comprising: a memory; a processor coupled to the memory; a communication interface circuit coupled to the processor, the communication interface circuit configured to connect the processor to a communication network, wherein the processor is configured with software instructions to perform steps comprising: storing provisioning data for a plurality of service contracts in at least one database in the memory; receiving via the communication interface circuit a request from a mobile device to download provisioning data for at least two of the plurality of service contracts; and downloading the provisioning data for the at least two of the plurality of service contracts to a VSIM internal memory unit in the mobile device using the communication interface circuit.
 28. The server of claim 27, wherein processor is configured with software instructions to perform steps further comprising: storing personal data for a user of the mobile device in a second remote database in the memory; receiving via the communication interface circuit an account name and an authentication credential from the user of the mobile device; authenticating the user based on the received account name and authentication credential; and downloading the stored personal data for the user to the VSIM internal memory unit using the communication interface circuit if the user is authenticated.
 29. A mobile device comprising a processor; an internal memory unit coupled to the processor, the internal memory unit having stored thereon provisioning data for a plurality of service contracts within a VSIM memory unit, and including a VSIM provisioning data buffer; and a wireless communication transceiver coupled to the processor, wherein the processor is configured with software instructions to perform steps comprising: receiving a selection of one of the plurality of service contracts to support the wireless communication call; transferring provisioning data for the selected one of the plurality of service contracts to the VSIM provisioning data buffer; and establishing a communication link via the wireless communication transceiver to a wireless communication network using the transferred provisioning data of the selected one the plurality of service contracts.
 30. The mobile device of claim 29, wherein the processor is further configured with software instructions to perform steps further comprising collecting a plurality of mobile device operational parameter values; determining an optimal service contract based upon the collected operational parameter values; retrieving from the memory provisioning data corresponding to the optimal service contract; and establishing a communication link via the wireless communication transceiver to a wireless communication network using the retrieved provisioning data corresponding to the optimal service contract.
 31. The mobile device of claim 30, wherein the operational parameter values comprises mobile device location, communication call usage type, and time.
 32. The mobile device of claim 31, wherein the communication call usage type corresponds to a wireless communication call being initiated and comprises one type selected from the group consisting of voice call, low speed data call, medium speed data call, and high speed data call.
 33. The mobile device of claim 32, wherein the provisioning data is retrieved from VSIM internal memory unit.
 34. The mobile device of claim 32, wherein the processor is further configured with software instructions to perform steps further comprising downloading the provisioning data corresponding to the optimal service contract from a remote database accessed via a remote VSIM server using the wireless communication transceiver.
 35. The mobile device of claim 32, wherein the processor is configured with software instructions to perform steps further comprising: determining whether a communication network supporting the optimal service contract is compatible with the mobile device; removing all communication network types similar to the communication network supporting the optimal service contract from consideration if the communication network is determined to be incompatible with the mobile device; and repeating the step of determining the optimal service contract from service contracts remaining in the plurality of service contracts based upon the collected operational parameter values.
 36. The mobile device of claim 32, wherein the processor is configured with software instructions to perform steps further comprising: determining whether a communication network supporting the optimal service contract is available to the mobile device; removing the communication network supporting the optimal service provider from consideration if the communication network is unavailable to the mobile device; and repeating the step of determining the optimal service contract from service contracts remaining in the plurality of service contracts based upon the collected operational parameter values.
 37. A tangible storage medium having stored thereon processor-executable software instructions configured to cause a processor to perform steps comprising: storing provisioning data for a plurality of service contracts in at least one remote database; receiving via a communication network a request from a mobile device to download provisioning data for at least two of the plurality of service contracts; and downloading the provisioning data for the at least two of the plurality of service contracts to a VSIM internal memory unit in the mobile device using the communication network.
 38. The tangible storage medium of claim 37, wherein the tangible storage medium has stored there in the at least one remote database, and wherein the at least one remote database includes provisioning data supporting a pre-paid service contract.
 39. The tangible storage medium of claim 37, wherein the tangible storage medium has stored there in the at least one remote database, and wherein the at least one remote database includes provisioning data supporting a monthly service contract.
 40. The tangible storage medium of claim 39, wherein the tangible storage medium has processor-executable software instructions configured to cause a processor to perform further steps comprising: storing personal data for a user of the mobile device in a second remote database; receiving via the communication network an account name and an authentication credential from the user of the mobile device; authenticating the user based on the received account name and authentication credential; and downloading the personal data for the user stored in the second remote database to the VSIM internal memory unit using the communication network if the user is authenticated.
 41. A tangible storage medium having stored thereon processor-executable software instructions configured to cause a processor of a mobile device to perform steps comprising: storing provisioning data for a plurality of service contracts in an internal memory unit of the mobile device; receiving a selection of one of the plurality of service contracts to support the wireless communication call; transferring provisioning data for the selected one of the plurality of service contracts to an internal memory unit provisioning data buffer of the mobile device; and establishing a communication link to a communication network using the transferred provisioning data of the selected one the plurality of service contracts.
 42. The tangible storage medium of claim 41, wherein the transferred provisioning data corresponds to a pre-paid service contract.
 43. The method of claim 41, wherein the transferred provisioning data corresponds to a monthly service contract.
 44. A tangible storage medium having stored thereon processor-executable software instructions configured to cause a processor of a mobile device to perform steps comprising: collecting operational parameter values of the mobile device; determining an optimal service contract from a plurality of service contracts based upon the collected operational parameter values; retrieving from memory provisioning data corresponding to the optimal service contract; and establishing a communication link to a communication network using the retrieved provisioning data corresponding to the optimal service contract.
 45. The tangible storage medium of claim 44, wherein the tangible storage medium has processor-executable software instructions configured to cause a processor to perform further steps comprising: retrieving the provisioning data corresponding to the optimal service provider from a VSIM internal memory unit of the mobile device.
 46. The tangible storage medium of claim 44, wherein the tangible storage medium has processor-executable software instructions configured to cause a processor to perform further steps comprising: retrieving the provisioning data corresponding to the optimal service provider from a remote database accessed via a remote VSIM server.
 47. The tangible storage medium of claim 44, wherein the tangible storage medium has processor-executable software instructions configured to cause a processor to perform further steps comprising: determining whether a communication network supporting the optimal service contract is compatible with the mobile device; removing all communication network types similar to the communication network supporting the optimal service contract from consideration if the communication network is determined to be incompatible with the mobile device; and repeating the step of determining the optimal service contract from service contracts remaining in the plurality of service contracts based upon the collected operational parameter values.
 48. The tangible storage medium of claim 44, wherein the tangible storage medium has processor-executable software instructions configured to cause a processor to perform further steps comprising: determining whether a communication network supporting the optimal service contract is available to the mobile device; removing the communication network supporting the optimal service contract from consideration if the communication network is unavailable to the mobile device; and repeating the step of determining the optimal service contract from service contracts remaining in the plurality of service contracts based upon the collected operational parameter values. 